package it.clariter.model;

import java.io.Serializable;
import java.util.Date;



public class Utente implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 6323207780371880243L;
	private int idUtente;
	private String nome;
	private String cognome;
	private String login;
	private String password;
	private Date dataIscrizione;
	private int stato;
	private String indirizzoMail;
	private Ruolo ruolo;
	// Costruttori
	public Utente(){
	}
	public Utente(String nome,String cognome,String login,String password,Date dataIscrizione,int stato,String indirizzoMail,Ruolo ruolo){
		this.nome=nome;
		this.cognome=cognome;
		this.login=login;
		this.password=password;
		this.dataIscrizione=dataIscrizione;
		this.stato=stato;
		this.indirizzoMail=indirizzoMail;
		this.ruolo=ruolo;
	}
	//Metodi get e set
	public int getIdUtente() {
		return idUtente;
	}
	public void setIdUtente(int idUtente) {
		this.idUtente = idUtente;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getCognome() {
		return cognome;
	}
	public void setCognome(String cognome) {
		this.cognome = cognome;
	}
	public String getLogin() {
		return login;
	}
	public void setLogin(String login) {
		this.login = login;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public Date getDataIscrizione() {
		return dataIscrizione;
	}
	public void setDataIscrizione(Date dataIscrizione) {
		this.dataIscrizione = dataIscrizione;
	}
	public int getStato() {
		return stato;
	}
	public void setStato(int stato) {
		this.stato = stato;
	}
	public String getIndirizzoMail() {
		return indirizzoMail;
	}
	public void setIndirizzoMail(String indirizzoMail) {
		this.indirizzoMail = indirizzoMail;
	}
	public Ruolo getRuolo() {
		return ruolo;
	}
	public void setRuolo(Ruolo ruolo) {
		this.ruolo = ruolo;
	}
	//Metodo toString
	public String toString(){
		return "Nome: "+this.getNome()+"\n"+"Cognome: "+this.getCognome()+"\n"+"Stato: "+this.getStato()+"\n"+"Data di iscrizione: "+this.getDataIscrizione()+"\n"+"Ruolo: "+this.getRuolo()+"\n";
	}
	//Metodo equals
	public boolean equals(Object o){
		if(o instanceof Utente)
			return true;
		Utente utente=(Utente)o;
		if(!((this.getIdUtente()==utente.getIdUtente())||(this.getNome().equals(utente.getNome()))||(this.getCognome().equals(utente.getCognome()))||(this.getLogin().equals(utente.getLogin()))||(this.getPassword().equals(utente.getPassword()))||(this.getDataIscrizione().equals(utente.getDataIscrizione()))||(this.getStato()==utente.getStato())||(this.getIndirizzoMail().equals(utente.getIndirizzoMail()))||(this.getRuolo().equals(utente.getRuolo()))))
			return false;
		return true;
	}
}
